package com.liaoye.test;

import java.util.Scanner;

/**
 * 【程序1】
 * 题目：古典问题：有一对兔子，从出生后第3个月起每个月都生一对兔子，小兔子长到第三个月后每个月又生一对兔子，假如兔子都不死，问每个月的兔子对数为多少？
 * 解题思路： 要思考每个月的兔子数量
 * 月数为：1 2 3 4 5 6 7 8  9   10 11 12 13 14 15  16
 * 对数为：1 1 2 3 5 8 13 21 34  55
 * 观察出规律为： 从第3月开始 这个月的兔子数等于前两个月的兔子数之和   1 2 月的兔子数为 1
 * 这个可以使用递归思想 如果 月份为 1 2的话返回1  >= 3 的话调用前两个月的计算
 */
public class Program1 {
    public static void main(String[] args) {
        System.out.println("第10个月的兔子数量为：" + getRabbitNumber(10));
//        System.out.println("第16个月的兔子数量为：" + getRabbitNumber(16));
    }

    public static int getRabbitNumber(int monthNumber) {
        if (monthNumber == 1 || monthNumber == 2) {
            return 1;
        } else {
            return getRabbitNumber(monthNumber - 1) + getRabbitNumber(monthNumber - 2);
        }
    }
}
